﻿using System;

namespace MetroGA.Core
{
	public interface IMetroAnalytics
	{
		#region Tracking

		void TrackView(String viewName);
		void TrackView(Type viewType);
		void TrackEvent(String category, String action, String label = null, long? value = null, String viewName = null, Type viewType = null);
		void TrackException(String message, bool isFatal = false);
		void TrackException(Exception exception, bool isFatal = false);
		void TrackTiming(String category, String name, TimeSpan interval, String label = null);
		void TrackSocial(String network, String action, String target = null);

		#endregion

		#region Session

		void RenewSession();

		#endregion
	}
}